移动云正式发布基于龙蜥 Anolis OS 的 BC-Linux V8.2 通用版操作系统
概述
2020年12月CentOS项目组宣布CentOS 8将于2021年12月31日结束支持,这意味着从2022年开始,使用CentOS 8的用户,将无法得到来自官方的新硬件支持、bug修复和安全补丁。针对这一情况,移动云大云操作系统团队基于国内开源社区深度定制,推出了企业定制版操作系统BC-Linux V8.2版本。
特色功能介绍
双内核技术
BC-Linux V8.2支持双内核技术,增加了BEK内核,BEK内核基于内核社区长期支持版本5.10进行定制化开发及增强,满足客户对于高版本内核的使用需求,同时支持默认内核4.19版本,满足多场景需求;
启动时间优化:完成内核启动时间深度优化,同环境下内核启动时间相比CentOS提升30%以上,系统启动时间相比CentOS提升10%以上;
内存使用率优化,提升物理机可用内存大小7%;
支持page owner特性,可用于定位内核内存泄漏和驱动使用大量内存等问题;
完整支持cgroup v2,提供多种 IO 隔离方案,包括buffer IO 限流(cgroup writeback),blk-iocost 权重控制等,解决长期以来IO不能彻底隔离的难题;
支持XDP(eXpress Data Path)高性能内核网络协议,绕开了传统TCP/IP内核协议栈,UDP性能提升1倍以上,近于DPDK等用户态网络方案的性能;
支持随机化空闲列表,提高了直接映射内存侧缓存的性能和利用率;
引入CPU离线调度算法框架,有效提升系统CPU利用率,支持离线在线业务混布;
新增实现TCP层服务监控功能,支持内核态采集TCP服务状态,可用于定位网络问题发现性能瓶颈;
IO性能增强:根据fio测试结果,BC-Linux V8.2相比CentOS 8.2在随机写性能方面增强15%左右,顺序读性能增强4%左右;
内存增强:根据ramspeed 和stream测试结果,BC-Linux V8.2内存综合性能较CentOS 8.2提升6%左右。
BC-Linux V8.2提供从CentOS 8系统到BC-Linux 8的迁移工具,帮助系统及应用的顺滑迁移,主要有以下优点:
支持用户从CentOS 8平滑迁移到BC-Linux 8,业务不受影响;
操作简单,执行单指令后工具自动化完成,无需人工干预;
帮助客户解决CentOS 8停服的烦恼,实现系统平稳过渡。
BC-Linux V8.2版本采用多种安全增强的手段提升系统的安全性。
BC-Linux V8.2版本通过内核热升级、进程热升级技术,分别从内核级、进程级实现了单节点的不停服升级,实现了全栈热升级,业务零中断。
进程热升级
进程热升级可以在无需重启应用程序,即可进行重要安全更新,实现秒级在线热修复,有效提高业务的高可用性。同时适用于所有进程热升级,操作简单方便,可靠性高;可多次重入,支持可持续的版本迭代热升级;支持反向操作,随时可选择恢复原始状态。
内核热升级
内核热升级能够动态的修复操作系统内核和模块的缺陷函数,无需重启系统即可升级内核,最大程度减少了系统宕机时间;可快速应用重要的以及安全相关的内核补丁,缩短漏洞修复时间;支持回滚操作,可快速恢复至升级前状态;不会造成系统任何性能损失。
为了更好地保障BC-Linux系统订阅用户得到全方位商业化的服务(如软件包安装及升级服务,技术支持和维护等),并使这些服务可以被授权和跟踪。BC-Linux V8.2默认集成授权管理工具,增加了DNF的授权管理插件,操作系统需要向DNF服务器进行授权认证才可以进行软件升级。
BC-Linux V8.2支持新一代容器-KATA安全容器,完成了KATA安全容器性能优化,首次在移动云内网镜像源场景应用上线。同时针对docker-ce及其组件进行了增强,具体包括:
完成了KATA安全容器性能优化,启动时间达到秒级,性能损耗不超过3%;
安全性增强,修复了CVE-2019-14271、CVE-2020-13401、CVE-2021-30465;
更新了containerd版本到1.5.2,提升稳定性和性能;
修复了部分漏洞,提升docker容器的稳定性。
BC-Linux V8.2提供了自动化部署工具bclinuxManTool,该工具基于PXE技术实现了无人值守、同时批量、灵活配置地部署多台服务器操作系统的功能。工具通过web界面与用户交互,提供灵活、便捷的配置功能,实现了远程、快速部署服务器集群的能力,具有以下特点:
支持同批次不同服务器,选择安装多种不同的Linux发行版镜像;
支持根据服务器角色,选择多种操作系统预装应用软件集;
支持灵活地预定义不同的磁盘分区,及各分区大小;
支持灵活的定制化脚本,实现操作系统安装后的系统配置(包括主机名、IP地址,应用软件配置等)。
BC-Linux 8与BC-Linux 7系列主要区别
名称 | BC-Linux 8 | BC-Linux 7 |
内核版本 | 采用4.19-x版本内核,增加了诸如:5级内存页表、全面支持Cgroup V2、MD集群、内核early kdump等新功能 | 采用3.10-x版本内核 |
软件包管理工具 | DNF(YUMv4),相比YUM v3有以下优点:
| YUM v3 |
编程语言版本 | Python 3 PHP 7.2 Ruby 2.5 Node.js 10 | Python 2 PHP 5.4 Ruby 2.0.0 |
主要的软件仓库(Yum源) | BaseOS --提供操作系统功能的核心组件,为所有安装提供基础操作系统的基础。 AppStream --包括额外的用户空间应用程序、运行时语言和数据库来支持各种工作场景。 | os -- 操作系统的基础软件仓库,包含大部分软件和工具 updates -- os里面更新的软件包 |
网络配置 |
| network和NetworkManager |
时间同步协议 | chronyd,不再支持NTP | chronyd与NTP都支持 |
TCP协议栈 | 拥有4.19版本的TCP协议栈,可以提供更高的性能、更好的可伸缩性和更稳定的性能;此外还有两种新的TCP拥塞算法。 | 3.10版本的TCP协议栈 |
网络数据包过滤(netfilter) | nftables相比iptables数据包过滤工具有以下改进:
| iptables |
总结
此次BC-Linux V8.2版本发布,带来了诸多的改进,加入了新的特性与功能,提升了性能和稳定性,也是应对CentOS停止更新的举措之一。本次发布的x86_64版本镜像除了支持常见的x86服务器之外,还支持采用海光CPU、兆芯CPU的服务器以及大云磐石服务器。后续BC-Linux会继续与国内自主可控开源社区进行合作,持续推出Linux服务器操作系统,为移动云及各项目提供自主可控、安全稳定的统一操作系统技术底座。
—— 完 ——
加入龙蜥社群加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】拉你入群;加入钉钉群:扫描下方钉钉群二维码。欢迎开发者/用户加入龙蜥OpenAnolis社区交流,共同推进龙蜥社区的发展,一起打造一个活跃的、健康的开源操作系统生态!
钉钉群二维码
龙蜥社区-小龙
关于龙蜥社区
龙蜥社区是由企事业单位、高等院校、科研单位、非营利性组织、个人等按照自愿、平等、开源、协作的基础上组成的非盈利性开源社区。龙蜥社区成立于2020年9月,旨在构建一个开源、中立、开放的Linux上游发行版社区及创新平台。
短期目标是开发Anolis OS作为CentOS替代版,重新构建一个兼容国际Linux主流厂商发行版。中长期目标是探索打造一个面向未来的操作系统,建立统一的开源操作系统生态,孵化创新开源项目,繁荣开源生态。
加入我们,一起打造面向未来的开源操作系统!
Https://openanolis.cn